// console.log(arguments.callee.toString());

//模块化内部都是局部变量

//在node.js中启动会默认包裹层模块就是下面的样子
/* function (exports, require, module, __filename,
    __dirname) {
    console.log(arguments.callee.toString());
} */


// console.log(arguments);
/* 
[Arguments] {
  '0': {},
  '1': [Function: require] {
    resolve: [Function: resolve] { paths: [Function: paths] },
    main: Module {
      id: '.',
      path: 'D:\\实践\\entrepot\\day6\\11.模块化
\\1.CommonJS模块化\\js',
      exports: {},
      filename: 'D:\\实践\\entrepot\\day6\\11.模
块化\\1.CommonJS模块化\\js\\arguments.js',      
      loaded: false,
      children: [],
      paths: [Array]
    },
    extensions: [Object: null prototype] {      
      '.js': [Function (anonymous)],
      '.json': [Function (anonymous)],
      '.node': [Function (anonymous)]
    },
    cache: [Object: null prototype] {
      'D:\\实践\\entrepot\\day6\\11.模块化\\1.CommonJS模块化\\js\\arguments.js': [Module]       
    }
  },
  '2': Module {
    id: '.',
    path: 'D:\\实践\\entrepot\\day6\\11.模块化\\1.CommonJS模块化\\js',
    exports: {},
    filename: 'D:\\实践\\entrepot\\day6\\11.模块
化\\1.CommonJS模块化\\js\\arguments.js',        
    loaded: false,
    children: [],
    paths: [
      'D:\\实践\\entrepot\\day6\\11.模块化\\1.CommonJS模块化\\js\\node_modules',
      'D:\\实践\\entrepot\\day6\\11.模块化\\1.CommonJS模块化\\node_modules',
      'D:\\实践\\entrepot\\day6\\11.模块化\\node_modules',
      'D:\\实践\\entrepot\\day6\\node_modules', 
      'D:\\实践\\entrepot\\node_modules',       
      'D:\\实践\\node_modules',
      'D:\\node_modules'
    ]
  },
  '3': 'D:\\实践\\entrepot\\day6\\11.模块化\\1.CommonJS模块化\\js\\arguments.js',
  '4': 'D:\\实践\\entrepot\\day6\\11.模块化\\1.CommonJS模块化\\js'
}
*/


//module.exports指向哪个就暴露哪个


/* module.exports={
    aadd
}
exports.a=1 
这样a是暴露不了的,要重新把module.exports赋值给exports才行,就像下面那样
*/

/* module.exports={
    add
}
exports=module.exports;
exports.a=1 */